package com.battle.service.service.in;

import nirvana.core.domains.vo.PageResult;
import com.battle.pojo.param.trainingPersonSetting.*;
import com.battle.pojo.vo.trainingPersonSetting.*;

import java.util.List;


/**
 * 【描 述】：训练人员设置服务
 * 【环 境】：J2SE
 * 【详 细】：
 */
public interface TrainingPersonSettingService {

    /**
     * 创建训练人员设置
     *
     * @param param
     */
    void createTrainingPersonSetting(CreateTrainingPersonSettingParam param);

    /**
     * 批量移除训练人员
     *
     * @param param
     */
    void bathRemoveTrainingPersonSetting(CreateTrainingPersonSettingParam param);

    /**
     * 修改训练人员设置
     *
     * @param param
     */
    void editTrainingPersonSetting(EditTrainingPersonSettingParam param);

    /**
     * 移除训练人员设置
     *
     * @param id
     */
    void removeTrainingPersonSetting(Long id);

    /**
     * 启动/禁用训练人员设置
     *
     * @param id
     */
    void enabledTrainingPersonSetting(Long id);

    /**
     * 获取训练人员设置详情
     *
     * @param id
     * @return
     */
    GetTrainingPersonSettingVo getTrainingPersonSetting(Long id);

    /**
     * 获取训练人员设置列表
     *
     * @param param
     * @return
     */
    PageResult<GetTrainingPersonSettingListVo> getTrainingPersonSettingList(GetTrainingPersonSettingListParam param);


    /**
     * 获取训练人员设置下拉列表
     *
     * @param param
     * @return
     */
    List<GetTrainingPersonSettingDownListVo> getTrainingPersonSettingDownList(GetTrainingPersonSettingDownListParam param);


}